package com.project.service;

import com.project.bean.ProgressBean;
import com.project.bean.ProjectBean;

import java.time.LocalDate;

public interface IProgressService {
    /**
     * 查看项目信息，基本信息和参与项目的员工进度信息
     * 可以借用项目通过id查找项目
     * @param id 项目ID
     * @return 项目对象
     */
    ProjectBean findById(int id);

    /**
     * 员工完成项目，将指定进度id的项目完成时间修改为当前时间
     * @param staffID 员工的id
     * @param completeTime 完成的时间
     */
    public void updateProgress(Integer staffID, LocalDate completeTime);

    /**
     * 添加员工
     * 就是加一条中间表记录
     * @param progressBean 进度
     */
    public void addProgress(ProgressBean progressBean);

    /**
     * 项目交付使用，先把该项目中所有交付日期为未完成的员工的交付日期更改为now
     * 再将项目的状态改为交付使用，还剩天数也就修改为已交付，交付日期也修改为now
     * @param status 项目状态
     * @param completeTime 完成时间
     * @param id 项目id
     */
    public void completeProject(Integer id,String status,LocalDate completeTime);
}
